//
//  CTMediator+DroneManager.m
//  DJILogin_Category
//
//  Created by wenpd on 2021/4/2.
//

#import "CTMediator+DroneManager.h"

@implementation CTMediator (DroneManager)

- (void)DJIDroneManager_init{
    [self performTarget:@"DroneManager" action:@"init" params:nil shouldCacheTarget:YES];
}

- (RACSubject *)DJIDroneManager_aircraftSingal {
    NSDictionary *params = [NSDictionary dictionaryWithObjectsAndKeys:@"aircraftSingal", @"subject_name", nil];
    return [self performTarget:@"DroneManager" action:@"getSubject" params:params shouldCacheTarget:YES];
}

- (RACSubject *)DJIDroneManager_fcStateSingal {
    NSDictionary *params = [NSDictionary dictionaryWithObjectsAndKeys:@"fcStateSingal", @"subject_name", nil];
    return [self performTarget:@"DroneManager" action:@"getSubject" params:params shouldCacheTarget:YES];
}

- (RACSubject *)DJIDroneManager_imuStateSingal {
    NSDictionary *params = [NSDictionary dictionaryWithObjectsAndKeys:@"imuStateSingal", @"subject_name", nil];
    return [self performTarget:@"DroneManager" action:@"getSubject" params:params shouldCacheTarget:YES];
}

- (RACSubject *)DJIDroneManager_onBoardSingal {
    NSDictionary *params = [NSDictionary dictionaryWithObjectsAndKeys:@"onBoardSingal", @"subject_name", nil];
    return [self performTarget:@"DroneManager" action:@"getSubject" params:params shouldCacheTarget:YES];
}

- (RACSubject *)DJIDroneManager_rtkStateSingal {
    NSDictionary *params = [NSDictionary dictionaryWithObjectsAndKeys:@"rtkStateSingal", @"subject_name", nil];
    return [self performTarget:@"DroneManager" action:@"getSubject" params:params shouldCacheTarget:YES];
}

- (RACSubject *)DJIDroneManager_rtkStationSingal {
    NSDictionary *params = [NSDictionary dictionaryWithObjectsAndKeys:@"rtkStationSingal", @"subject_name", nil];
    return [self performTarget:@"DroneManager" action:@"getSubject" params:params shouldCacheTarget:YES];
}

- (RACSubject *)DJIDroneManager_cameraStateSingal {
    NSDictionary *params = [NSDictionary dictionaryWithObjectsAndKeys:@"cameraStateSingal", @"subject_name", nil];
    return [self performTarget:@"DroneManager" action:@"getSubject" params:params shouldCacheTarget:YES];
}

- (RACSubject *)DJIDroneManager_sdcardStateSingal {
    NSDictionary *params = [NSDictionary dictionaryWithObjectsAndKeys:@"sdcardStateSingal", @"subject_name", nil];
    return [self performTarget:@"DroneManager" action:@"getSubject" params:params shouldCacheTarget:YES];
}

- (RACSubject *)DJIDroneManager_mediaSingal {
    NSDictionary *params = [NSDictionary dictionaryWithObjectsAndKeys:@"mediaSingal", @"subject_name", nil];
    return [self performTarget:@"DroneManager" action:@"getSubject" params:params shouldCacheTarget:YES];
}

- (RACSubject *)DJIDroneManager_gimbalStateSingal {
    NSDictionary *params = [NSDictionary dictionaryWithObjectsAndKeys:@"gimbalStateSingal", @"subject_name", nil];
    return [self performTarget:@"DroneManager" action:@"getSubject" params:params shouldCacheTarget:YES];
}

- (RACSubject *)DJIDroneManager_batteryStateSingal {
    NSDictionary *params = [NSDictionary dictionaryWithObjectsAndKeys:@"batteryStateSingal", @"subject_name", nil];
    return [self performTarget:@"DroneManager" action:@"getSubject" params:params shouldCacheTarget:YES];
}

- (NSDictionary*)DJIDroneManager_getProduct:(NSDictionary*)params{
    return [self performTarget:@"DroneManager" action:@"getProduct" params:params shouldCacheTarget:YES];
}

- (BOOL)DJIDroneManager_isConnect:(NSDictionary*)params{
    return [self performTarget:@"DroneManager" action:@"isConnect" params:params shouldCacheTarget:YES];
}

- (BOOL)DJIDroneManager_isM300Rtk:(NSDictionary*)params{
    return [self performTarget:@"DroneManager" action:@"isM300Rtk" params:params shouldCacheTarget:YES];
}

@end
